草庐IT

simplexml - PHP simplexml 实体

全部标签

php - SimpleXML:获取子节点

OnlythischildnodwhatIneedAndthisone我想用PHP解析上面给出的XML。我不知道如何获取这两个子节点。当我使用下面的代码时,它会触发错误:Warning:main()[function.main]:Cannotaddelementbbbnumber2whenonly0suchelementsexistinaaa[2]->bbbas$bbb){echo$bbb[2]->$ccc;//wronginhereecho$bbb[3]->$ccc;}?> 最佳答案 使用xpath$ccc=$xml->xpath

php - 如何更改 simpleXML 元素的属性值?

我用SimepleXML解析了一个XML文件:EL但现在我想向“数据”属性附加一些内容。不在文件中,而是在我的变量中(在我从simplexml_load_file获得的对象结构中)。我该怎么做? 最佳答案 未经测试,但应该可以:$element->attributes()->data=((string)$element->attributes()->data).',ghi'; 关于php-如何更改simpleXML元素的属性值?,我们在StackOverflow上找到一个类似的问题:

php - simplexml,返回具有相同标签的多个项目

我将以下XML文件加载到phpsimplexml中。BobSmith使用$customers=newSimpleXMLElement($xmlstring);这将返回“Bob”,但我如何返回姓氏?echo$customers->prospect[0]->customer->contact->name; 最佳答案 您可以访问不同的使用数组样式语法按编号排列元素。$names=$customers->prospect[0]->customer->name;echo$names[0];//Bobecho$names[1];//Smith事

php - Laravel 中的实体逆向工程或自动生成?

我通常使用SF2和Doctrine,可以自动生成实体,如果你在像MySQLWorkbench这样的软件中构建模式,你可以进行逆向工程。我是Laravel的新手,所以有办法同时做这两件事吗?我会使用Laravel,因为我必须做一个非常小的项目,但我不想为我们所谓的“迁移”编写所有这些代码,看起来很无聊不是吗?所以有一种方法可以在laravel中生成这些东西吗?也许我必须为此使用Laravel中的Doctrine? 最佳答案 如果您想从现有的mysql数据库生成迁移文件,您可以使用名为XCMer/larry-four-generator

php - SimpleXML - 无法获取第一个标记的属性

我正在尝试读取XML的第一个标记的属性。这是XML结构value1value2…下面是我尝试获取timestamp属性的方法(尝试了2种方法,均在此处列出,均无效)$timestamp=$xml->myxml->attributes()->timestamp;//givesNodenolongerexistswarningif($xml->myxml&&$xml->myxml->attributes()){//Doesn'tenterthisloop$arr=$xml->myxml->attributes();$timestamp=$arr['timestamp'];}有人可以告诉我如

php - 如何使用 SimpleXML 获取具有命名空间的节点属性?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestionyoutube.xml......update_videos.php$source='youtube.xml';//loadasfile$youtube=newSimpleXMLElement($source,null,true);foreach($youtube->entryas$item){//titleworksecho$item->title;//nowhowtogetseconds?My

php - 使用 simplexml_load_string 获取 xml 属性

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:Accessing@attributefromSimpleXML我正在使用一些第三方API,它们通过以下形式的xml返回错误:0Errormessagetextgoeshere.使用simplexml_load_string在PHP中,我可以轻松获得状态0和错误消息文本,但我找不到检索code="111"的方法。来自的值.它似乎被SimpleXML删除了。';print_r($xml);echo'';?>输出SimpleXMLElementObject([status]=>0[error]=>Errormess

php - 领域驱动设计,实体懒加载

我对领域驱动设计(DDD)还很陌生,但我的理解是您与应用程序服务对话,这是您的“模型”的入口。该服务可以与使用源(文件、数据库等)获取数据的存储库对话。存储库返回一个实体。这就是我从中得到的全局概念。该服务知道存储库但不知道实体等。现在我有以下问题。我有一个实体用户,类似于下面的东西(只是一个例子)getCity()函数返回城市实体。我希望此函数使用延迟加载,因此在使用用户存储库时注入(inject)CityEntity并不是真正的延迟加载。我提出了两个解决问题的方法。但我觉得两者都反对DDD原则。我想出的第一个解决方案是在用户实体中注入(inject)城市存储库,这有缺点:如果您需要

PHP simplexml逆向

有什么方法可以反向循环加载在simpleXML中的xml?说如果我有以下xml$string="123";$xml=simplexml_load_string($string);有什么方法可以反转$xml以便在执行foreach时得到第3项 最佳答案 假设OP是初学者,只对我推荐使用的解决方案感兴趣xpath()获取元素和array_reverse()颠倒他们的顺序:$items=array_reverse($xml->xpath('item'));注意:XPath“项目”抓取所有当前元素的直接子元素。

php - 为什么 php 不能将引号转换为 mysql 的 html 实体?

PHP默认使用“魔术引号”,但因此受到了很多批评。我知道它将在下一个主要版本的PHP中禁用它。虽然反对它的论点是有道理的,但我不明白的是为什么不只使用HTML实体来表示引号而不是剥离和删除斜线?毕竟,绝大多数mySQL都用于输出到Web浏览器?例如,'使用而不是'并且它根本不会影响数据库。另一个问题,为什么PHP不能为每个带有只是好奇。:) 最佳答案 将'放入数据库中的字符串列会很好,如果您使用数据库内容的全部目的是输出到网页。但事实并非如此。最好在输出的时候转义输出。这是唯一一次您确定输出将转到网页,而不是日志文件、电子邮件或其他